using System;
using System.Collections;

namespace Com.CMS263.PO
{
	#region MarryShow

	/// <summary>
	/// MarryShow object for NHibernate mapped table 'MarryShow'.
	/// </summary>
	public class MarryShow
	{
		#region Member Variables
		
		protected int _id;
		protected string _title;
		protected string _man;
		protected string _woman;
		protected string _info;
		protected string _description;
		protected string _tvName;
		protected int _tvId;
		protected DateTime _showTime;
		protected DateTime _addDate;
		protected int _orderNum;
		protected string _filePath;

		#endregion

		#region Constructors

		public MarryShow() { }

		public MarryShow( string title, string man, string woman, string info, string description, string tvName, int tvId, DateTime showTime, DateTime addDate, int orderNum, string filePath )
		{
			this._title = title;
			this._man = man;
			this._woman = woman;
			this._info = info;
			this._description = description;
			this._tvName = tvName;
			this._tvId = tvId;
			this._showTime = showTime;
			this._addDate = addDate;
			this._orderNum = orderNum;
			this._filePath = filePath;
		}

		#endregion

		#region Public Properties

		public virtual int Id
		{
			get {return _id;}
			set {_id = value;}
		}

		public  virtual string Title
		{
			get { return _title; }
			set
			{
				if ( value != null && value.Length > 800)
					throw new ArgumentOutOfRangeException("Invalid value for Title", value, value.ToString());
				_title = value;
			}
		}

		public  virtual string Man
		{
			get { return _man; }
			set
			{
				if ( value != null && value.Length > 50)
					throw new ArgumentOutOfRangeException("Invalid value for Man", value, value.ToString());
				_man = value;
			}
		}

		public  virtual string Woman
		{
			get { return _woman; }
			set
			{
				if ( value != null && value.Length > 50)
					throw new ArgumentOutOfRangeException("Invalid value for Woman", value, value.ToString());
				_woman = value;
			}
		}

		public  virtual string Info
		{
			get { return _info; }
			set
			{
				if ( value != null && value.Length > 800)
					throw new ArgumentOutOfRangeException("Invalid value for Info", value, value.ToString());
				_info = value;
			}
		}

		public  virtual string Description
		{
			get { return _description; }
			set
			{
				if ( value != null && value.Length > 8000)
					throw new ArgumentOutOfRangeException("Invalid value for Description", value, value.ToString());
				_description = value;
			}
		}

		public  virtual string TvName
		{
			get { return _tvName; }
			set
			{
				if ( value != null && value.Length > 50)
					throw new ArgumentOutOfRangeException("Invalid value for TvName", value, value.ToString());
				_tvName = value;
			}
		}

		public  virtual int TvId
		{
			get { return _tvId; }
			set { _tvId = value; }
		}

		public  virtual DateTime ShowTime
		{
			get { return _showTime; }
			set { _showTime = value; }
		}

		public  virtual DateTime AddDate
		{
			get { return _addDate; }
			set { _addDate = value; }
		}

		public  virtual int OrderNum
		{
			get { return _orderNum; }
			set { _orderNum = value; }
		}

		public  virtual string FilePath
		{
			get { return _filePath; }
			set
			{
				if ( value != null && value.Length > 500)
					throw new ArgumentOutOfRangeException("Invalid value for FilePath", value, value.ToString());
				_filePath = value;
			}
		}

		

		#endregion
	}
	#endregion
}